package test;

import java.io.*;
import java.util.ArrayList;

public class Dame1_2 {

	/**
	 * @param args
	 */
	public static void main(String[] args) throws Exception{
		// TODO 自动生成的方法存根
		//创建一个管理对象
		EmpManage em=new EmpManage();
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); 
		//制作菜单
		while (true) {
			System.out.println("请选择操作：");
			System.out.println("1：添加一个员工");
			System.out.println("2：查找一个员工");
			System.out.println("3：显示所有员工");
			System.out.println("4：修改一个员工薪资");
			System.out.println("5：删除一个员工");
			System.out.println("6：退出系统");
			//获取键盘
			String operType=br.readLine();
			if(operType.equals("1")){
				System.out.println("请输入员工编号：");
				String empNo=br.readLine();
				System.out.println("请输入名字：");
				String name=br.readLine();
				System.out.println("请输入工资：");
				float sal=Float.parseFloat(br.readLine());
				Emp emp=new Emp(empNo,name,sal);
				em.addEmp(emp);
			}else if (operType.equals("2")) {
				System.out.println("请输入员工编号：");
				String empNo=br.readLine();
				em.showInfo(empNo);
			}else if(operType.equals("3")) {
				em.showAll();
			}else if (operType.equals("4")) {
				System.out.println("请输入员工编号：");
				String empNo=br.readLine();
				System.out.println("请输入新工资：");
				float newsal=Float.parseFloat(br.readLine());
				em.updateSal(empNo, newsal);
			}else if(operType.equals("5")){
				System.out.println("请输入要删除的员工编号：");
				String empNo=br.readLine();
				em.delEmp(empNo);
			}else if(operType.equals("6")){
				//退出系统
				System.exit(0);
			}
		}
	}

}
//员工管理
class EmpManage{
	private ArrayList al=null; 
	//构造函数
	public EmpManage(){
		al=new ArrayList();
	}
	//添加员工
	public void addEmp(Emp emp){
		al.add(emp);
		System.out.println("现在员工数为"+al.size()+"人");
	}
	//显示员工信息
	public void showInfo(String empNo){
		//遍历
		for(int i=0;i<al.size();i++){
			//取出Emp对象
			Emp emp=(Emp)al.get(i);
			//比较编号
			if(emp.getEmpNo().equals(empNo)){
				System.out.println("找到给员工，他的信息是：");
				System.out.println("编号："+empNo);
				System.out.println("名字："+emp.getName());
				System.out.println("编号："+emp.getSal());
			}
		}
	}
	//显示所有员工信息
	public void showAll(){
		System.out.println("现在员工数为"+al.size()+"人，分别是：");
		//遍历
		for (int i=0;i<al.size();i++){
			//获取emp对象
			Emp emp=(Emp) al.get(i);
			//打印信息
			System.out.println("编号："+emp.getEmpNo());
			System.out.println("名字："+emp.getName());
			System.out.println("工资："+emp.getSal());
		}
	}
	//修改员工薪水
	public void updateSal(String empNo,float newsal){
		//遍历
		for(int i=0;i<al.size();i++){
			//取出Emp对象
			Emp emp=(Emp) al.get(i);
			//比较
			if(emp.getEmpNo().equals(empNo)){
				System.out.println("修改的员工信息为：");
				System.out.println("编号："+emp.getEmpNo());
				System.out.println("名字："+emp.getName());
				System.out.println("工资："+emp.getSal());
				//更改
				emp.setSal(newsal);
				System.out.println("修改成功，现在该员工信息为：");
				System.out.println("编号："+emp.getEmpNo());
				System.out.println("名字："+emp.getName());
				System.out.println("工资："+emp.getSal());
			}
			
		}
	}
	//删除员工
	public void delEmp(String empNo){
		//遍历
		for(int i=0;i<al.size();i++){
			//获取emp对象
			Emp emp=(Emp) al.get(i);
			//比较
			if(emp.getEmpNo().equals(empNo)){
				al.remove(i);
			}
		
		}
		System.out.println("现在员工数为"+al.size()+"人");
	}
	
}

//雇佣类
class Emp{
	//员工号，名字，工资
	private String empNo;
	private String name;
	private float sal;
	//构造函数
	public Emp(String empNo,String name,float sal){
		this.empNo=empNo;
		this.name=name;
		this.sal=sal;
	}
	public String getEmpNo() {
		return empNo;
	}
	public void setEmpNo(String empNo) {
		this.empNo = empNo;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public float getSal() {
		return sal;
	}
	public void setSal(float sal) {
		this.sal = sal;
	}
}
